\section{Conclusion}
\label{sec:conclusion}

Due to the time limit, we cannot evaluate more larger benchmarks. But based on
the preliminary result, we may draw a cautious conclusion that different
applications may be suitable for different programming models. And we have
identified some metrics that can help user select the right programming models,
such as computation VS. IO operations, number of synchronization, data access
pattern, control flow structure, fixed or floating point computation dominate,
etc.

And we believe that without big improvement of the programming
ability, the heterogeneous programming models are suitable for developing
libraries on selected algorithms since domain expert do the fine tuning. But
they are not suitable for general programming at current stage.
